// 验证管理员密码
const cloud = require('wx-server-sdk')

cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV
})

const db = cloud.database()

exports.main = async (event, context) => {
  try {
    const { password } = event
    
    // 验证参数
    if (!password) {
      return {
        success: false,
        error: '密码不能为空'
      }
    }
    
    // 从数据库获取管理员密码配置
    const configResult = await db.collection('config')
      .doc('admin_password')
      .get()
    
    let adminPassword = 'admin123' // 默认密码
    
    // 如果数据库中有配置，使用数据库中的密码
    if (configResult.data && configResult.data.password) {
      adminPassword = configResult.data.password
    } else {
      // 如果没有配置，创建默认配置
      await db.collection('config').add({
        data: {
          _id: 'admin_password',
          password: adminPassword,
          createTime: new Date(),
          updateTime: new Date()
        }
      })
    }
    
    // 验证密码
    const isValid = password === adminPassword
    
    return {
      success: true,
      isValid,
      message: isValid ? '验证成功' : '密码错误'
    }
  } catch (error) {
    console.error('验证管理员密码失败:', error)
    return {
      success: false,
      error: error.message
    }
  }
}
